package org.elsfs.cloud.common.mybatis.ext.sql.support.condition;


import lombok.RequiredArgsConstructor;
import org.elsfs.cloud.common.mybatis.ext.sql.support.SqlUtils;

/**
 * 表达式条件项
 *
 */
@RequiredArgsConstructor
public class ExpressionConditionItem implements ConditionItem {

    /**
     * 表达式
     */
    private final String expression;
    /**
     * 表达式参数
     */
    private final Object[] args;

    /**
     * 构建SQL片段
     *
     * @return SQL片段
     */
    @Override
    public String buildSqlFragment() {
        return SqlUtils.handleSqlExpression(
            this.expression,
            this.args
        );
    }
}
